<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 

class Produtos extends CI_Controller {
	
	function __construct() {
		parent::__construct();
	
		# Carregando Models
		$this->load->model(
		array(
		'Produto',
		'Mesa'
			)
		);
	}
	
	/**
	* @name index()
	* @param void
	* @return void
	* @see Produtos
	* @since 28/05/2013
	* @author Carlos Augusto Dugonski
	*/
	public function index() {
		if ($this->index->logado() == 'administrador') {
			$this->index->montarPagina('produto/produto_view');
		} else {
			show_error(ERRO_PERMISSAO);
		}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function criar(){
    	if ($this->index->logado() == 'administrador') {
	    	$aDdata['nome_produto'] = mysql_real_escape_string(strtolower($_POST['nome']));
	    	$aDdata['descricao_produto'] = mysql_real_escape_string(strtolower($_POST['desc']));
	    	$aDdata['valor'] = mysql_real_escape_string(strtolower($_POST['valor']));
	    	$aDdata['status'] = mysql_real_escape_string(strtolower($_POST['status'])); 
	    	$this->Produto->criar($aDdata);
	    	redirect('produtos');
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function upload() {
    	if ($this->index->logado() == 'administrador') {
	    	// verifica se foi enviado um arquivo
	    	if(isset($_FILES['arquivo']['name']) && $_FILES["arquivo"]["error"] == 0) {
	    		 
	    		$arquivo_tmp = $_FILES['arquivo']['tmp_name'];
	    		$nome = $_FILES['arquivo']['name'];
	    		// Pega a extensao
	    		$extensao = strrchr($nome, '.');
	    		// Converte a extensao para mimusculo
	    		$extensao = strtolower($extensao);
	    		// Somente imagens, .jpg
	    		if(strstr('.jpg', $extensao)) {
	    			$novoNome = md5(microtime()) . $extensao;
	    			// Concatena a pasta com o nome
	    			$destino = FILES . 'produtos/' . $novoNome;
	    			
	    			$config['image_library'] = 'gd2';
	    			$config['source_image']	= $arquivo_tmp;
	    			$config['create_thumb'] = TRUE;
	    			$config['new_image'] = $destino;
	    			$config['maintain_ratio'] = FALSE;
	    			$config['master_dim'] = 'width';
	    			$config['width']	 = 200;
	    			$config['height']	= 200;
	    			$config['x_axis']	= 0;
	    			$config['y_axis']	= 0;
	    			$this->load->library('image_lib', $config);
	    			if ($this->image_lib->resize()) {
	    				echo 'va para o criar';
	    			}
	    		} else
	    			echo json_encode("Você só pode enviar arquivos do tipo .jpg");
	    	} else {
	    		echo json_encode("Você não enviou nenhum arquivo!");
	    	}
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function ler(){
    	if ($this->index->logado() == 'administrador') {
    		echo '{ "aaData" : ' . json_encode($this->Produto->ler()) . " } ";
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function atualizar(){
    	if ($this->index->logado() == 'administrador') {
    		
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function detalhes($iIdProduto){
    	if ($this->index->logado() == 'administrador' || $this->index->logado() == 'mesa') {
	    	$aProduto = $this->Produto->lerById($iIdProduto);
	    	foreach ($aProduto as $produto) {
	    		$aProduto = $produto;
	    	}
	    	//var_dump($aProduto);
	    	$this->index->montarPagina('mesa/produto_detalhes_view', $aProduto);
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function deletar($iIdProduto){
    	if ($this->index->logado() == 'administrador') {
	    	if($this->Produto->deletar($iIdProduto)){
	    	redirect('produtos');
	    	} else {
	    		show_404();
	    	}
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }
    
    /**
     * @name
     * @param
     * @param
     * @return
     * @see
     * @since
     * @author
     */
    public function cardapio($iIdCategoria){
    	if ($this->index->logado() == 'administrador' || $this->index->logado() == 'mesa') {
	    	$this->load->model('Produto');
	    	$aData['produtos'] = $this->Produto->lerByIdCategoria($iIdCategoria);
	    	$this->index->montarPagina('mesa/produtos_view', $aData);
    	} else {
    		show_error(ERRO_PERMISSAO);
    	}
    }   
}

/* End of file Produtos.php */